promise reolve 两次后才结束(伪)
promise reolve 两次后才结束(伪)
问题
我一开始以为很简单,但后来一想这个log不对,不管怎么样的流程都不会是这个输出
聊天记录
我这里模拟的你的代码执行流程得到的结果是没有问题的,
,你那里连续打印两次赋值然后再打印的结束 很奇怪
我这里模拟的流程怎么弄也不可能连续两次赋值然后才结束
按理说 Promise 得到resolve后 就往下执行, 但是我的 resolve 需要2次。
我有一种猜想能得到你这个结果
老司机带带我,我 15:51:22意思是我上次的定时器没清理掉》?
老司机带带我,我 15:51:43应该不是, 因为我的定时器需要100秒才会触发
崮生 (见我吹水请禁言 15:51:44有可能,你 getShopList 内的逻辑比较混乱
老司机带带我,我 15:52:30已经显示显示了ok
老司机带带我,我 15:52:41然后第二次才显示了 超时。
崮生 (见我吹水请禁言 15:52:56不一定是定时器,你 getShopList 内的代码使用 await 可能会将一个 log延时到了第二次才打印
崮生 (见我吹水请禁言 15:53:15你拉长 searchShop 的调用时间试试
崮生 (见我吹水请禁言 15:55:26就是让 searchShop 的每次调用间隔久一点,排除一下第一次调用的log混入第二次的可能
崮生 (见我吹水请禁言 15:56:25或者你给每次调用加一个 id ,然后在log内输出id,看连续的log是不是同一次调用的
老司机带带我,我 15:58:40调用getShopList 时?
崮生 (见我吹水请禁言 15:58:57searchshop
老司机带带我,我 15:59:25searchshop 只调用一次。
老司机带带我,我 16:08:43好像是上一次的。
老司机带带我,我 16:09:18
崮生 (见我吹水请禁言 16:10:09果然不是同一次的
崮生 (见我吹水请禁言 16:10:28我想来想去只想到 log 被延时了
崮生 (见我吹水请禁言 16:12:32老司机带带我,我searchshop 只调用一次。你这句话害的我又想了好一会
老司机带带我,我 16:12:52额,我没理解对。
老司机带带我,我 16:13:21上次循环的结果没清理干净。
崮生 (见我吹水请禁言 16:13:50找到问题了就好,编程就怕编程玄学
崮生 (见我吹水请禁言 16:13:57变成玄学